Sharing network addresses

ABSTRACT

A network address assigned a shared designation by a first client computer is received, in a first data format, automatically, at a host computer from the first client computer. The network address is categorized and published. Publishing the network address includes converting the network address into a second data format, receiving, at the host computer, a subscription request from a second client computer, and sending the network address to the second client computer in response to receiving the subscription request.

CROSS-REFERENCE TO RELATED APPLICATION

The present application claims priority from U.S. provisionalapplication No. 60/820,535 filed Jul. 27, 2006, and titled “SharingNetwork Addresses,” the entire contents of which is incorporated hereinby reference for all purposes.

TECHNICAL FIELD

This description relates to sharing network addresses.

BACKGROUND

A web browser may allow a user to create a shortcut to a favorite webpage or network resource by creating and saving a pointer that points tothe uniform resource locator (“URL”) or network address of the web pageor network resource. Such a shortcut is referred to variously as, forexample, a favorite or a bookmark, and generally is stored in a localdirectory referred to variously as, for example, a favorites list, abookmark list, or a hotlist. (Hereinafter, such directories will bereferred to typically as a favorites list or more generally asfavorites). For example, a web browser may allow a user to add thenetwork address of a currently-loaded web page to the user's favoriteslist by selecting “Favorites” from the browser tool bar and thenselecting “Add to favorites . . . ” from the resulting drop-down menu.After a user has added a network address to the user's favorites list,the user can navigate to the network address by selecting the networkaddress from the user's favorites list instead of manually entering thenetwork address in the browser's address window.

In addition, a web browser also may allow the user to assign a title toa network address stored in the user's favorites list in order to helpthe user recognize the network address more easily. Additionally oralternatively, the web browser may assign the network address a defaulttitle automatically. For example, the web browser may assign the networkaddress a default title that is the same as the title assigned to theweb page available at the network address.

Furthermore, a web browser may allow a user to organize the user'sfavorites list in a hierarchical fashion by enabling the user to createa nested directory of folders and sub-folders of network addresses.Allowing a user to organize the user's favorites list in a hierarchicalfashion may help the user to locate and find a particular networkaddress quickly and easily, especially when the user has added a largenumber of network addresses to the user's favorites list.

SUMMARY

In one aspect, a network address assigned a shared designation by afirst client computer is received in a first data format, automatically,at a host computer from the first client computer. The network addressis categorized and published. Publishing the network address includesconverting the network address into a second data format, receiving, atthe host computer, a subscription request from a second client computer,and sending the network address to the second client computer inresponse to receiving the subscription request.

Implementations may include one or more of the following features. Thesecond data format may be a feed format. A new network address assigneda shared designation by the first computer may be received in the firstdata format, automatically, at the host computer from the first clientcomputer. The new network address may be categorized and published.Publishing the new network address may include converting the newnetwork address into the second data format, and sending the new networkaddress to the second client computer.

In addition, a new network address assigned a shared designation by athird client computer may be received in the first data format,automatically, at the host computer from the third client computer. Thenew network address may be categorized and published. Publishing the newnetwork address may include converting the new network address into thesecond data format, and sending the new network address to the secondclient computer.

Furthermore, a new network address assigned a shared designation by thesecond client computer may be received in the first data format,automatically, at the host computer from the second client computer. Thenew network address may be categorized and published. Publishing the newnetwork address may include converting the network address into thesecond data format, and sending the new network address to the firstclient computer.

In another general aspect, a network address assigned a shareddesignation by a first client computer is received, automatically, at ahost computer from the first client computer. In addition, asubscription request from a second client computer is received at thehost computer and the network address is sent to the second clientcomputer in response to receiving the subscription request.

Implementations may include one or more of the following features. Thenetwork address may be published. In addition, the network address maybe stored in a shared directory on the host computer. The shareddirectory may include a plurality of network addresses and thesubscription request may include a filtering criterion. At least one ofthe plurality of network addresses that satisfies the filteringcriterion may be sent to the second client computer. Additionally oralternatively, each of the plurality of network addresses also mayinclude category data, source data, or publication time data, and thefiltering criterion may be category, source, or publication time. Inaddition, the shared directory may be searched for an instance of thenetwork address, and it may be determined that the instance of thenetwork address is stored in the shared directory. Based on thedetermination that the instance of the network address is stored in theshared directory, the network address may be deleted.

Furthermore, a new network address assigned a shared designation by thesecond client computer may be received, automatically, from the secondclient computer. The new network address may be published and sent tothe first client computer. The new network address also may be stored inthe shared directory on the host computer.

In addition, the new network address may be converted into analternative data format. The alternative data format may be a feedformat. For instance, the alternative data format may be an extensiblemarkup language (“XML”)-based format such as, for example, a resourcedescription framework (“RDF”) site summary (“RSS”) format, a rich sitesummary (“RSS”) format, a really simple syndication (“RSS”) format, oran Atom format.

Authentication information also may be received from the first clientcomputer, and the subscription request may be authenticated based uponthe authentication information. In addition, sending the network addressto the second client computer may be conditioned upon successfulauthentication of the subscription request. The authenticationinformation may be a roster such as, for example, an authorized userroster or an authorized computer roster. Authenticating the subscriptionrequest based upon the authentication information may include comparingthe authentication information to the subscription request and theauthentication information may be a password.

A new network address assigned a shared designation by a third clientcomputer also may be received, automatically, at the host computer fromthe third client computer. The new network address may be published andsent to the second client computer.

Authentication information may be received from the first clientcomputer. In addition, a request to publish network addresses may bereceived from the third client computer. The request to publish networkaddresses may be authenticated conditioned upon the authenticationinformation and publishing the new network address may be based uponsuccessful authentication of the request to publish network addresses.

A new network address assigned a shared designation by the first clientcomputer may be received, automatically, at the host computer from thefirst client computer. The new network address may be published. Inaddition, the new network address may be sent to the second clientcomputer.

In addition, a subscription request from a third client computer may bereceived at the host computer, and the network address may be sent tothe third client computer in response to receiving the subscriptionrequest from the third client computer.

The network address may be categorized. Categorizing the network addressmay include accessing an Open Directory Project (“ODP”) categoryindication for the network address, and associating the network addresswith the ODP category indication. Additionally or alternatively,categorizing the network address may include parsing the contentavailable at the network address, and associating the network addresswith a category indication based on the parsed content.

The network address may include network address data and comment data,network address data and category data, network address data andrepresentative image data, or network address data and a sourceindication that identifies a publishing user associated with the networkaddress. The source indication may include a screen name and an alertindication indicating that the network address has been published may beaccessed. In addition, the alert indicator may be displayed inassociation with display of the screen name in a buddy list.

In another general aspect, a device includes a receiver for receivingone or more network addresses assigned a shared designation by a firstclient computer, automatically, from a first client computer andreceiving a subscription request from a second client computer. Inaddition, the device includes a publisher for publishing the networkaddresses, and a sender for sending one or more of the network addressto the second client computer in response to the receiver receiving thesubscription request.

Implementations may include one or more of the following features. Thedevice may include a memory including a shared directory. The shareddirectory may be configured for storing the network address. The devicealso may include a filter for filtering the network addresses sent tothe second client computer and a categorizer for categorizing thenetwork addresses.

In still another general aspect, a system includes a first clientcomputer, a host computer, and a second client computer. The firstclient computer is configured to assign a shared designation to anetwork address and automatically send the network address to the hostcomputer in response to assigning the network address a shareddesignation. The host computer includes a receiver for receiving thenetwork address from the first client computer and receiving asubscription request from a second client computer. The host computeralso includes a publisher for publishing the network address, and asender for sending the network address to the second client computer inresponse to the receiver receiving the subscription request. Inaddition, the second client computer is configured to send thesubscription request to the host computer and receive the networkaddress from the host computer.

Implementations may include one or more of the following features. Forexample, the first client computer may be configured to issue a query toa user of the first client computer to determine whether the networkaddress is to be assigned a shared designation. The query may beconditioned on an indication that suggests that the user desires thatthe network address be assigned a shared designation.

In another general aspect, a computer readable medium includesinstructions that are executable to cause a processor to receive anetwork address assigned a shared designation by a first clientcomputer, automatically, from the first client computer and to publishthe network address. In addition, the computer readable medium includesinstructions that are executable to cause a processor to receive asubscription request from a second client computer and send the networkaddress to the second client computer in response to receiving thesubscription request.

Implementations may include one or more of the following features. Thecomputer readable medium may include instructions that are executable tocause a processor to receive a new network address assigned a shareddesignation by a second client computer, automatically, from the secondclient computer and to publish the new network address. In addition, thecomputer readable medium may include instructions that are executable tocause a processor to convert the network address into an alternativedata format.

In addition, the computer readable medium may include instructionsexecutable to cause a processor to receive a new network addressassigned a shared designation by a third client computer, automatically,from the third client computer, to publish the new network address, andto send the new network address to the second client computer.

The computer readable medium also may include instructions executable tocause a processor to receive a new network address assigned a shareddesignation by the first client computer, automatically, from the firstclient computer, to publish the new network address, and to send the newnetwork address to the second client computer.

The computer readable medium may include instructions executable tocause a processor to receive a subscription request from a third clientcomputer, and to send the network address to the third client computerin response to receiving the subscription request from the third clientcomputer. The computer readable medium also may include instructionsexecutable to cause a processor to categorize the network address. Thenetwork address may include network address data, and a sourceindication. The source indication may identify a publishing userassociated with the network address. The computer readable medium alsomay include instructions executable to cause a processor to access analert indicator indicating that the network address has been published,and to display the alert indicator in association with a display of thescreen name in a buddy list.

Implementations of any of the techniques described may include a methodor process, an apparatus or system, or computer software on acomputer-accessible medium. The details of particular implementationsare set forth below. Other features will be apparent from thedescription and drawings, and from the claims.

DESCRIPTION OF DRAWINGS

Referring now to the drawings, in which like reference numbers representcorresponding parts throughout:

FIG. 1 is a block diagram of a communications system;

FIG. 2 a is a block diagram of a computer architecture;

FIG. 2 b is an example of a table for storing received shared networkaddresses and associated information.

FIG. 2 c is an example of a table for tracking group membership.

FIG. 2 d is an example of a table for storing user preferences.

FIGS. 3 a-3 c are diagrams of a process for sharing network addresses;

FIG. 4 is a flow chart illustrating a process for sharing networkaddresses.

DETAILED DESCRIPTION

Systems and techniques for sharing network addresses (e.g., favorites)are described. For example, a web browser allows a user of acommunications system to create and store favorites pointing to thenetwork addresses of favorite web pages or network resources in afavorites list and to designate one or more of the stored favorites asshared or community accessible. In addition, the web browser allows theuser to arrange the user's favorites list into folders and/orsub-folders and, at any time, to designate one or more folders as sharedor community favorites folders. After the user designates a favorite orfolder as shared, the web browser initiates an automatic upload of thefavorite or the contents of the shared favorites folder to a host suchthat a copy (e.g., replica) of the favorite or the shared favoritesfolder is created on the host and made accessible to other users of thecommunications system. In the case of the shared favorites folder, anytime the user subsequently adds a network address to the folderdesignated as a shared favorites folder, the newly added network addressis automatically uploaded to the host where it is stored in the hostedshared favorites folder. Host stored favorites are thereafter madeaccessible to other users of the communications system.

For instance, the host may publish shared network addresses as items ina syndication feed such that other users of the communications systemmay access the shared favorites by subscribing to the syndication feed.Additionally or alternatively, the host may publish shared networkaddresses on one or more web pages or the host may send shared networkaddresses to one or more users of the communications system inelectronic mail (“email”) messages.

In another example, when the user adds a new network address to theuser's favorites list, the web browser queries the user to determinewhether the user wishes to share the newly added network address withother users of the communications system. In some implementations, thisquery may be conditioned on information known by the browser and/or thehost that suggests the likelihood of the network address being shared,or the user wishing to share network addresses generally. Differentmechanisms for querying the user to determine whether the user wishes toshare the newly added network address are contemplated. For example,when the user adds a network address to the user's favorites list, theuser may be presented with a window that allows the user to designate acustomized name for the network address and that queries the user todetermine whether the network address should be shared with other usersof the communications system. Additionally or alternatively, theaddition of a new network address to the user's favorites list maytrigger the web browser to display a pop-up window querying whether thenetwork address should be shared with other users of the communicationssystem. If the user confirms that the newly added network address shouldbe shared with other users, the web browser automatically uploads thenewly added network address to the host where it is made accessible toother users of the communications system.

In some implementations, the host computer receives shared networkaddresses and automatically categorizes the shared network addressesbased on a predefined categorization scheme and/or categorization rules.After categorizing the network addresses, the host computer compiles thenetwork addresses and makes the network addresses available to users ofthe communications system.

FIG. 1 is a block diagram of an example of one arrangement of acommunications system. Briefly, the communications system includes afirst client, a second client, a third client, and a host. The firstclient is configured to automatically send a shared favorite to the hostin response to the favorite being assigned a shared designation.Meanwhile, the second client is configured to send a shared favoritesubscription request to the host. The host includes a receiver forreceiving the shared favorite from the first client and for receivingthe subscription request from the second client. In addition, the hostincludes a sender for sending the shared favorite to the second clientin response to receiving the subscription request from the secondclient.

In more detail, and as illustrated in FIG. 1, communications system 100includes client A 102, client B 104, and client C 106 which areelectronically connected to host 108 through network 110.

Client A 102, client B 104, client C 106, and host 108 each may beimplemented by, for example, a general purpose computer capable ofresponding to and executing instructions in a defined manner, a personalcomputer, a special-purpose computer, a workstation, a server, anotebook or laptop computer, a personal digital assistant (“PDA”), awireless telephone, a device, a component, other equipment, or somecombination of these items that is capable of responding to andexecuting instructions. In addition, client A 102, client B 104, clientC 106 and host 108 each may include a central processing unit (“CPU”)and memory/storage devices that store data and various programs such asoperating systems and application programs. Furthermore, client A 102,client B 104, client C 106, and host 108 each also may include aninput/output (“I/O”) device and peripheral equipment such as acommunications card or device (e.g., a modem or network adapter) forexchanging data with network 110.

Client A 102, client B 104, client C 106, and host 108 each may beconfigured to receive instructions from, for example, a softwareapplication, a program, a piece of code, a device, a computer, acomputer system, or a combination thereof, which independently orcollectively direct operations, as described herein. The instructionsmay be embodied permanently or temporarily in any type of machine,component, equipment, storage medium, or propagated signal that iscapable of being delivered to the clients or host 108.

Network 110 includes hardware and/or software capable of enabling director indirect communications between client A 102, client B 104 and C 106and host 108. Additionally or alternatively, network 110 may includehardware and/or software capable of enabling direct or indirectcommunications between client A 102, client B 104, and client C 106, orbetween client A 102, client B 104, and client C 106 and othercommunications devices (not shown) connected to network 110. As such,network 110 may include direct links between client A 102, client B 104,and client C 106 and host 108, and other communications devices (notshown) connected to network 110. Additionally or alternatively, network110 may include one or more sub-networks (not shown) between the clientsand host 108, and/or other communications devices connected to network110.

Each network or sub-network may include, for example, a wired orwireless data pathway capable of carrying and receiving data. Examplesof network 110 include the Internet, the world wide web, a wide areanetwork (“WAN”), a local area network (“LAN”), analog or digital wiredor wireless telephone networks, radio, television, cable, satellite,and/or any other delivery mechanisms capable of carrying data.

FIG. 2 is a block diagram of an example of a computer architecture 200suitable for implementing one or more of client A 102, client B 104,client C 106 and/or host 108. The computer architecture includes: CPU202 where computer instructions are processed; display interface 204which provides communication interface and processing functions forrendering graphics, images, and text on a display; keyboard interface206 which provides a communication interface to a keyboard; printerinterface 208 which provides a communication interface to a hardcopyoutput device; pointing device interface 210 which provides acommunication interface to a mouse or an equivalent processing device;random access memory (“RAM”) 212 where computer instructions and datacan be stored in a volatile memory device for processing by CPU 202;read-only memory (“ROM”) 214 where invariant low-level systems code ordata for basic system functions such as basic I/O, startup, or receptionof keystrokes from a keyboard are stored in a non-volatile memorydevice; modem interface 216 which provides a communication interface toa computer network over a modem connection; computer network interface218 which provides a communication interface to a computer network overa computer network connection; and disk 220 (e.g., a fixed disk, aremovable disk, or a combination thereof). The disk 220 stores computerexecutable instructions for an operating system 222 and applicationprograms 224, including, for example, a web browser 226, as well as datafiles 228. Data bus 230 provides bi-directional communication betweenthe constituent devices and CPU 202.

RAM 212 interfaces with computer bus 230 so as to provide quick RAMstorage to CPU 202 during execution of software programs such as theoperating system 222, application programs 224, including, for example,the web browser 226, and device drivers. More specifically, CPU 202loads computer executable instructions from disk 220 or other memorymedia into a region of RAM 212 in order to execute software programs.Data, such as, for example, data related to web browsing, is stored inRAM 212, where the data is accessed by CPU 202 during execution.

FIG. 2 illustrates one example of a computer architecture suitable forimplementing one or more of client A 102, client B 104, client C 106and/or host 108. However other architectures and communications devicesalso may be used to implement client A 102, client B 104, client C 106and/or host 108.

Referring again to FIG. 1, the communications system 100 is configuredto enable the automatic sharing of favorite network addresses. Client A102, client B 104, and client C 106 each include at least one browser ormicro-browser application, referred to hereinafter generally asbrowsers, for communicating with host 108 and accessing content and/orresources available on host 108 and/or other communications devicesconnected to network 110. Similarly, host 108 is configured tocommunicate with client A 102, client B 104, and client C 106 and tostore content and/or resources such that client A 102, client B 104, andclient C 106 and other communications devices connected to network 110may access the hosted content and/or resources. In addition, host 108may be further configured to publish and/or syndicate content,resources, data and/or other information. Furthermore, host 108 may beconfigured further still to function as an Internet service provider(“ISP”), an online service provider (“OSP”), and/or an instant messagingprovider system. Host 108 may include one or more communicationsdevices.

The browsers on client A 102, client B 104, and client C 106 allow usersof client A 102, client B 104, and client C 106 to store the networkaddresses of favorite web pages and/or resources in local favoriteslists. In addition, the browsers allow users to assign network addressesstored in or being added to the local favorites lists shareddesignations. For example, a user may assign a network address stored ina favorites list a shared designation by selecting the network addressand manually instructing the browser to assign the network address ashared designation or by adding the network address to a folder withinthe favorites list that has been assigned a shared designation.Additionally or alternatively, when a user adds a network address to afavorites list, the browser may query the user to determine whether theuser wishes to assign the network address a shared designation.

In some implementations, users of client A 102, client B 104, and clientC 106 may be allowed to associate additional information with a networkaddress to which they have assigned a shared designation. For example, auser may be allowed to associate a shared network address with aparticular category or to associate a comment or note with a sharednetwork address. Additionally or alternatively, a user may be allowed tospecify a particular group of users with which a network address is tobe shared. In this manner, members of a group may share networkaddresses with one another but not with all of the users of thecommunications system 100.

One or more of client A 102, client B 104, and client C 106 may beconfigured to transmit a network address and any associated informationto host 108 automatically in response to the network address beingassigned a shared designation. For example, one or more of client A 102,client B 104, and client C 106 may include an XML remote procedure call(“RPC”) application program interface (“API”) designed to transmit anetwork address and any associated information to host 108 automaticallyin response to the user network address being assigned a shareddesignation. In such an example, the XML-RPC API may wrap (e.g., encode)the network address and any associated information in an XML-RPC messageand use a hypertext transfer protocol (“HTTP”) POST command to send thenetwork address and any associated information to host 108.

In some implementations, one or more of client A 102, client B 104, andclient C 106 may be configured to associate additional information witha network address before automatically transmitting the network addressto host 108. For example, one or more of client A 102, client B 104, andclient C 106 may be configured to associate a network address with atimestamp indicating, for example, the date and time the network addresswas assigned a shared designation or the date and time the networkaddress was transmitted to host 108 before transmitting the networkaddress to host 108. In addition, one or more of client A 102, client B104, and client C 106 also may be configured to associate a networkaddress with an indication of the user that assigned the network addressa shared designation before transmitting the network address to host108.

Host 108 is configured to receive shared network addresses andinformation associated with the shared network addresses from client A102, client B 104, or client C 106 and to subsequently make the receivednetwork addresses and associated information accessible to users of thecommunications system 100 and/or other communications devices connectedto network 110.

In order to facilitate making the received shared network addressesavailable to users of the communications system 100 and/or othercommunications devices connected to network 110, host 108 may storereceived shared network addresses in, for example, a table, a database,or other data structure.

FIG. 2 b illustrates an example of a table 238 for storing receivedshared network addresses and associated information on host 108. Table238 includes a network address column 240, a time/date shared column242, a sharing user column 244, a category column 246, and a groupcolumn 248. In addition, table 238 includes 11 shared network addressentries 250, 252, 254, 256, 258, 260, 262, 264, 266, 268, and 270. Eachshared network address entry includes a specific shared network addressas well as additional data indicating the time and date the networkaddress was shared, the user that shared the network address, a categoryassociated with the network address, and a group with which the networkaddress is to be shared.

For example, the shared network address entry 250 corresponding to theshared network address “www.espn.com” is associated with time/dateshared information indicating that the network address was shared at9:36 am on Sep. 3, 2005; sharing user information indicating that thenetwork address was shared by Brian Jones; category informationindicating that the network address is related to sports; and groupinformation indicating that the network address is to be shared onlywith members of the “Jones' Family Headlines” group.

It is conceivable that multiple users may share the same networkaddress. As a result, when host 108 receives a shared network address,host 108 may parse the table 238 of stored, previously received networkaddresses to determine whether the network address already exists intable 238. In some implementations, if host 108 determines that anetwork address already exists in table 238, host 108 may not store aduplicate copy of the network address in table 238. For example, host108 may not store the newly received shared network address or host 108may delete the previously received network address and replace it withthe newly received shared network address. Alternatively, host 108 maystore multiple copies of the same shared network address in table 238.Doing so may be particularly useful in the event that the sharing usershave associated the same network address with different additionalinformation (e.g., different categories).

Table 238 is merely one example of a data structure for storing receivedshared network addresses and additional information on host 108.Alternative data structures may be used to store received shared networkaddresses and additional information on host 108. Furthermore, datastructures used to store network addresses and additional informationmay store more or less additional information than the additionalinformation illustrated in FIG. 2 b.

As discussed above, when host 108 receives a network address, the sharednetwork address already may be associated with or assigned a category(or other designation or keyword or metadata). For example, when a userdesignates a network address as a network address to be shared, the useralso may associate the network address with a particular category.Different users of the communications system 100 may categorize networkaddresses differently. For instance, one user may categorize the networkaddress www.espn.com as sports whereas another user may categorize thenetwork address www.espn.com as news.

As a result, in some implementations, host 108 may retain multiplecategorizations associated with a single network address. In addition,when host 108 makes a network address associated with multiplecategorizations accessible to users of the communications system 100,host 108 also may make the multiple categorizations associated with thenetwork address accessible to users of the communications system 100.

Alternatively, in other implementations, host 108 may disassociate ashared network address from a categorization assigned by a user of thecommunications system 100 before making the shared network addressaccessible to users of the communications system 100. Additionally oralternatively, host 108 may automatically categorize a shared networkaddress before making it accessible to users of the communicationssystem 100.

The automatic categorization of network addresses by host 108 may beaccomplished in many different ways and by various different processes.For example, host 108 may leverage the publicly accessiblecategorization scheme made available by the Open Directory Project(“ODP”) (see http://dmoz.org). The ODP provides a database of web pagesand/or content and a corresponding hierarchical scheme for categorizingthe web pages and/or content. When host 108 receives a new networkaddress, host 108 may perform a reverse lookup for the network addressin the ODP database to determine the hierarchical categorizationassigned to the network address by the ODP and thereafter assign thesame categorization to the network address as that found in the ODPdatabase. In the event that the network address has not been assigned acategorization in the ODP database, host 108 may iteratively repeat thereverse lookup procedure using a less specific part of the URL until acategory assignment for the network address is discovered. For instance,if no category is found forwww.cnn.com/stories/entertainment/12345.html, then host 108 may searchthe ODP database for a category for www.cnn.com/stories/entertainment.If that fails, host 108 may search the ODP database for a category forwww.cnn.com/stories, and so on and so forth.

Additionally or alternatively, host 108 may leverage heuristics or textprocessing techniques to automatically categorize a received networkaddress. For example, host 108 may parse textual content available at anetwork address and automatically categorize the network address basedon keywords found in the textual content. Host 108 also may categorize anetwork address based on the categorization of one or more linksembedded within a web page available at the network address.

Disassociating network addresses from categorizations assigned by usersof the communications system 100 and/or automatically categorizingnetwork addresses before making shared network addresses accessible tousers of the communications system 100 may help prevent or at leastlimit confusing and/or redundant categorizations assigned to sharednetwork addresses by users of the communications system 100.

In some implementations, host 108 may automatically categorize areceived network address while simultaneously retaining one or moreuser-assigned categorizations for the network address. In suchimplementations, when the received network address is made accessible tousers of the communications system 100, the network address may beaccompanied by indications of the automatically assigned categorizationand the one or more user-assigned categorizations, as well asinformation indicating the users that assigned the one or moreuser-assigned categorizations. Recipients of the network address thenmay be allowed to assign one of the one or more user-assignedcategorizations or the automatically-assigned categorization to thenetwork address. Additionally or alternatively, the recipient may assigna categorization to the network address that is distinct from both theone or more user-assigned categorizations and the automatically-assignedcategorization. In this manner, the recipient may be presented with oneor more proposed categorizations for the network address, yet stillallowed to assign the network address a categorization that is mostappropriate for the recipient's purposes.

As discussed above, host 108 is configured to make received networkaddresses available to users of the communications system 100 or othercommunications devices connected to network 110. Any number oftechniques and/or mechanisms for making received network addressesaccessible may be employed.

For example, host 108 may make received network addresses accessible bypublishing received network addresses as items in one or more sharedfavorites syndication feeds. Such shared favorites syndication feeds maybe XML-based syndication feeds such as, for example, resourcedescription framework (“RDF”) site summary (“RSS”) syndication feeds,rich site summary (“RSS”) syndication feeds, really simple syndication(“RSS”) syndication feeds, or Atom syndication feeds. Alternatively, thesyndication feeds may be of any other syndication feed format.

Host 108 may publish one or more shared favorites syndication feeds thatare accessible by all users of the communications system 100 and allcommunications devices connected to network 110. Additionally oralternatively, access to one or more of the shared favorites syndicationfeeds may be limited to one or more users of the communications system100 and/or one or more communications devices connected to network 110.For example, host 108 may enable one or more users of the communicationssystem 100 to create a group or community of users with which to sharenetwork addresses by allowing one or more members of the group tocontrol or restrict who may access, receive, and/or contribute to acollection of shared favorites (e.g., a shared favorites syndicationfeed) associated with the group.

In such implementations, host 108 may maintain a table, list, database,or other structure for storing the identities of users that are allowedto access, receive, and/or contribute to specific collections of sharednetwork addresses. As such, when host 108 receives a shared networkaddress from a member of a particular group and the shared networkaddress is associated with group information identifying the particulargroup as the group with which the shared network address is to beshared, host 108 knows to limit who may access or receive the sharednetwork address to the members of the particular group. In addition,when host 108 receives a shared network address that is associated withgroup information identifying a particular group with which to share thenetwork address from a user that is not a member of the particulargroup, host 108 knows not to share the received network address withmembers of the particular group.

FIG. 2 c illustrates an example of a table 272 for tracking which usersbelong to which groups, and are thus entitled to access, receive, and/orcontribute to the group's collection of shared favorites. Table 272includes a group name column 274 and an allowed subscribers column 276.In addition, table 272 includes two group membership entries 278 and280. Each group membership entry includes a group name and a list ofusers that are allowed to access, receive, and/or contribute to thecollection of shared network addresses associated with the group. Forexample, the group membership entry 278 associated with the “Jones'Family Headlines” group indicates that Brian Jones, Carol Jones, andCathy Jones are allowed to access, receive, and/or contribute to the“Jones' Family Headlines” collection of shared network addresses.Therefore, referring again to FIG. 2 b, when host 108 received networkaddress entry 250 indicating that the network address www.espn.com hadbeen shared by Brian Jones and that the network address was to be sharedwith members of the “Jones' Family Headlines” group, host 108 knew thatthe network address was intended to be shared with Carol Jones and CathyJones. In addition, host 108 knew that Brian Jones was allowed to sharethe network address with members of the “Jones' Family Headlines” group.

In some implementations, host 108 may allow an individual user (e.g., agroup administrator) to create and control access to a group for sharingnetwork addresses. For example, host 108 may allow a group administratorto specify a rostered list of users and/or a rostered list ofcommunications devices that are allowed to access, receive, and/orcontribute to a collection of shared network addresses. In addition,host 108 may allow the user to invite particular users to access,receive, and/or contribute to the shared favorites. For instance, thegroup administrator may indicate a desire to invite a particular user tojoin the group, and, in response, host 108 may send a communication(e.g., email message) to the particular user inviting the user to jointhe group. Furthermore, host 108 may allow the group administrator torequire users interested in accessing, receiving, and/or contributing tothe collection of shared network addresses to provide a password, orother form of identification or authentication, in order to access,receive, and/or contribute to the collection. In such implementations,the appropriate password may be supplied to a user upon being invited tojoin the group. Requiring that users supply identification orauthentication information in order to access, receive, and/orcontribute to a collection of shared favorites may serve to ensure thatonly users that have been invited to access, receive, and/or contributeto the collection of shared favorites actually do so.

Host 108 may be configured to allow a recipient of a shared favoritessyndication feed to regulate, to some extent, the network addresses thatare received through the shared favorites syndication feed. For example,host 108 may allow a recipient to create filters for filtering networkaddresses sent to the recipient through a shared favorites syndicationfeed. For instance, the user may be able to create filters that filtershared network addresses based on one or more different criteria,including, for example, date and/or time, source (e.g.,sharing/publishing user), category, and/or keyword.

Allowing a recipient to regulate the network addresses received by therecipient through a shared favorites syndication feed may help ensurethat the recipient receives shared network addresses that the recipientfinds relevant and pertinent. For example, a recipient may indicate adesire to receive only network addresses categorized as being related toUniversity of Maryland athletics in a shared favorites syndication feed.In such a scenario, host 108 may aggregate network addresses classifiedas being related to tens, hundreds, or thousands of differentcategories, but only publish network addresses categorized as beingrelated to University of Maryland athletics in the shared favoritessyndication feed made accessible to the user. Alternatively, host 108may publish a shared favorites syndication feed including networkaddresses classified as being related to tens, hundreds, or thousands ofdifferent categories, yet only display to the recipient those networkaddresses published in the shared favorites syndication that arecategorized as being related to University of Maryland athletics. Inaddition, the recipient may be able to implement additional filters suchas a filter for regulating the source of network addresses received bythe recipient through the shared favorites syndication feed. Forexample, the recipient may indicate a desire to receive only sharednetwork addresses categorized as being related to University of Marylandathletics and shared by users that are listed in the recipient's buddylist, the recipient's contact list, or the recipient's address book.

In implementations where host 108 is configured to allow recipients ofshared favorites syndication feeds to regulate the network addressesthat they receive through shared favorites syndication feeds, host 108may maintain a table, list, database, or other data structure forstoring user preferences so as to enable filtering of the sharedfavorites syndication feeds in a manner that is consonant with therecipients' expressed preferences.

FIG. 2 d illustrates an example of a table 282 for storing userpreferences. Table 282 includes a subscriber (i.e., user) column 284, atime preference column 286, a publisher preference column 288, and acategory preference column 290. In addition, table 282 includes threesubscriber entries 292, 294, and 296. Each subscriber entry includes asubscriber name, time preference information, publisher preferenceinformation, and category preference information. For example, thesubscriber entry 292 for subscriber Mike Donald includes time preferenceinformation indicating that Mike Donald only desires to receive sharednetwork addresses that have been shared within the last five days,publisher preference information indicating that Mike Donald onlydesires to receive shared network addresses shared by Carol Jones, CathyJones, or Tom Smith, and category preference information indicating thatMike Donald only desires to receive network addresses categorized asbeing related to sports, news, travel, music, or Shakespeare. As such,when host 108 makes a shared favorites syndication feed accessible toMike Donald, host 108 may only publish network addresses that have beenshared by Carol Jones, Cathy Jones, or Tom Smith within the last fivedays and that are categorized as being related to sports, news, travel,music, or Shakespeare.

In addition to, or as an alternative to, host 108 being configured toallow a recipient of a shared favorites syndication feed to regulate thenetwork addresses that are received through the shared favoritessyndication feed, one or more of client A 102, client B 104, and clientC 106 also may be configured to allow a recipient of a shared favoritessyndication feed to regulate the network addresses that are receivedthrough the shared favorites syndication feed. For example, one or moreof client A 102, client B 104, and client C 106 may include a newsreader or aggregator for subscribing subscribe to and receiving one ormore shared favorites syndication feeds. In such cases, the news readeror aggregator may be configured to filter shared favorites received bythe reader based on one or more different criteria, including, forexample date and/or time, source (e.g., sharing/publishing user), and/orcategory.

For example, one or more of client A 102, client B 104, and client C 106may receive a shared favorites syndication feed including a number ofshared network addresses, but filter the shared favorites syndicationfeed so as to display to a user only those network addresses in whichthe user has expressed an interest in receiving. For instance, a usermay be able to configure one or more of client A 102, client B 104, andclient C 106 to filter shared network addresses received from a sharedfavorites syndication feed based on one or more different criteria,including, for example, date and/or time, source (e.g.,sharing/publishing user), category, and/or keyword.

In some implementations, host 108 and/or one or more of client A 102,client B 104, and client C 106 may be further configured to allow aparent or guardian to regulate the network addresses received by a childunder the control of the parent or guardian from a shared favoritessyndication feed. In such implementations, host 108 and/or one or moreof client A 102, client B 104, and client C 106 may maintain a table,list, database or other data structure including parental control accessauthorizations for individual users and the network addresses madeaccessible to a user (e.g., a child) through a shared favoritessyndication feed may be filtered according to parental control accessauthorizations associated with the user. In addition, before host 108publishes a network address to a shared favorites syndication feed, thenetwork address may be associated with a parental control ranking forthe purposes of enabling the filtering of network addresses based onparental control access authorizations.

Host 108 also may make received network addresses accessible bypublishing received network addresses on one or more shared favoritesweb pages in addition to, or as an alternative to, publishing a sharedfavorites syndication feed. A shared favorites web page may representnetwork addresses shared by an individual user of the communicationssystem 100, a group of users of the communications system 100, or allusers of the communications system 100. For instance, a shared favoritesweb page may include a list of hyperlinks corresponding to each networkaddress an individual user has designated as a shared network address.In addition, the shared favorites web page may include additionalinformation related to each listed hyperlink, such as, for example, acategory assigned to the network address associated with the hyperlink,one or more keywords associated with a resource made available at thenetwork address, and the date and/or time the individual user designatedthe network address as a network address to be shared. Alternatively, ashared favorites web page may include a list of hyperlinks correspondingto all of the network addresses shared by the members of a particularcommunity or group. In some implementations, access to a sharedfavorites web page may be restricted by a restriction mechanism, suchas, for example a password. A shared favorites web page also may includeone or more selectable icons for enabling a user to indicate a desire tosubscribe to a particular shared favorites syndication feed.

Host 108 also may make received favorites accessible by sending one ormore received favorites to one or more users of the communicationssystem 100 in one or more email messages.

Client A 102, client B 104, and client C 106 each are configured toaccess and/or receive network addresses shared by users of thecommunications system 100 and made accessible by host 108. For example,client A 102, client B 104, and client C 106 each may includenewsreaders, aggregators, or browsers capable of receiving syndicationfeeds from host 108. Additionally or alternatively, client A 102, clientB 104, and client C 106 each may include browsers capable of accessingshared favorites from a published web page or email software programscapable of receiving shared favorites in email messages.

In some implementations, users interested in accessing, receiving,and/or contributing to a collection of shared network addresses may berequired to subscribe to the collection of shared network addresses. Forexample, subscribing may be as simple as communicating a subscriptionrequest or an indication of interest in accessing, receiving, and/orcontributing to the collection of shared network addresses to host 108.Additionally or alternatively, subscribing may involve instructing anews reader or aggregator to subscribe to one or more shared favoritessyndication feeds, registering with a shared favorites web page, orregistering an email address for receiving shared network addresses withhost 108. In some implementations, host 108 may not make receivednetwork addresses accessible to users of the communications system 100until host 108 has received at least one subscription request for theshared network addresses.

As discussed above, in some implementations, host 108 may be configuredto operate as an instant messaging provider system enabling the exchangeof instant messages between client A 102, client B 104, and client C106. In such implementations, client A 102, client B 104, and client C106 include instant messaging applications and the instant messagingapplications include buddy lists that allow users of client A 102,client B 104, and client C 106 to send and receive instant messages. Thebuddy lists display screen names or identities (e.g., buddies) of usersof the communications system 100 with whom users of client A 102, clientB 104, and client C 106 may engage in instant messaging sessions.

In such implementations, when host 108 receives a shared network addressfrom a publishing user, host 108 makes the shared network addressavailable to other users of the communications system 100 and alsocauses the instant messaging applications on client A 102, client B 104,and client C 106 to display alert indications (e.g., icons or otherrepresentations) in their buddy lists indicating that the publishinguser recently shared a favorite. For example, an icon may be displayednext to the publishing user's screen name in the buddy lists.Consequently, users of the communications system 100 may be notifiedthat the publishing user has recently shared a favorite without thepublishing user having to independently contact all of the other usersof the communications system 100.

FIG. 3 illustrates an example of a method for sharing network addresses.In general, the method 300 enables a user of a first client to sharenetwork addresses with a user of a second client merely by addingnetwork addresses to a favorites directory resident on the first clientand designated as a favorites directory to be shared (e.g., published).In addition, the method 300 enables a user of the second client to sharenetwork addresses with the user of the first client merely by addingnetwork addresses to a favorites directory resident on the second clientand designated as a favorites directory to be shared.

Briefly, the method 300 includes receiving a request to publish a sharedfavorites directory from the first client, creating a hosted sharedfavorites directory, generating a shared favorites syndication feed,receiving a shared favorites subscription request from the secondclient, and sending one or more shared network addresses to the secondclient in response to receiving the shared favorites subscriptionrequest. In addition, the method 300 includes receiving a networkaddress from the first client, adding the received network address tothe hosted shared favorites directory, updating the shared favoritessyndication feed to include the network address as a new item, receivinga request for an updated shared favorites syndication feed from thesecond client, and sending the network address to the second client inresponse to receiving the request for an updated shared favoritessyndication feed. The method 300 also includes receiving a new networkaddress from the second client, adding the new network address to thehosted shared favorites directory, updating the shared favoritessyndication feed to include the new network address as a new item,receiving a request for an updated shared favorites syndication feedfrom the first client, and sending the new network address to the firstclient in response to the request for an updated shared favoritessyndication feed.

The method 300 will now be described in greater detail using client A102, client B 104, and host 108 as examples of apparatuses forimplementing the method 300. However, other apparatuses and/orarrangements also may be used to implement the method 300.

Client A 102 sends a request to host 108 to publish a local sharedfavorites directory (302-C1). Host 108 receives the request to publishthe shared favorites directory (302-H). In response, host 108 creates ahosted shared favorites directory for storing shared network addressesreceived by host 108 (304-H) and generates a shared favoritessyndication feed for publishing network addresses stored in the hostedshared favorites directory (operation 306-H).

In the event that the local shared favorites directory includes one ormore network addresses to be shared at the time the request to publishthe local shared favorites directory is sent, the network addresses tobe shared may be sent concurrently with the request to publish theshared favorites directory and stored in the hosted shared favoritesdirectory. In addition, the shared network addresses stored in thehosted shared favorites directory may be published as items in theshared favorites syndication feed. If the local shared favoritesdirectory does not include any network addresses to be shared at thetime the request to publish the local shared favorites directory issent, the hosted shared favorites directory may remain empty until ashared network address is received from client A 102. In addition, theshared favorites syndication feed may remain empty until a sharednetwork address is received from client A 102.

Client A 102 sends an invitation to client B 104 to subscribe to theshared favorites syndication feed (308-C1). For example, client A 102may send an email to client B 104 inviting client B 104 to subscribe tothe shared favorites syndication feed. The email may include the URL ofthe shared favorites syndication feed along with a password required toaccess the shared favorites syndication feed. Additionally oralternatively, in some implementations, host 108 may send an invitationto client B 104 to subscribe to the shared favorites syndication feed.In still other implementations, the invitation to subscribe to theshared favorites syndication feed may be passive. For example, host 108may maintain a web page that lists all shared favorites syndicationfeeds available for subscription.

Client B 104 receives the invitation to subscribe to the sharedfavorites syndication feed (308-C2), and sends a subscription request(310-C2). Sending a subscription request may include configuring a newsreader or aggregator resident on client B 104 to subscribe to the sharedfavorites syndication feed. Additionally or alternatively, sending asubscription request to host 108 may include sending a password oralternative form of identification or authentication. The request may besent to host 108, as shown, or alternatively, it may be sent to client A102 and serviced by client A 102 or passed along to host 108 forservicing.

In the implementation illustrated by FIG. 3 a, host 108 receives thesubscription request from client B 104 (310-H) and sends the sharednetwork addresses stored in the hosted shared favorites directory toclient B 104 (312-H). Client B 104 receives the shared network addressesas items in the shared favorites syndication feed (312-C2). In the eventthat no shared network addresses have been stored in the hosted sharedfavorites directory yet, no shared network addresses will have beenpublished to the shared favorites syndication feed, and, consequently,no shared network addresses are sent to client B 104 from host 108.

Referring to FIG. 3 b, the user of client A 102 adds a network addressto the local shared favorites directory resident on client A 102(314-C1). In addition, the user of client A 102 also may attachadditional content and/or data to, or otherwise associate additionalcontent and/or data with, the network address. Such additional contentand/or data may include comments, notes, images, or category data. Forexample, the user of client A 102 may add a comment or note to thenetwork address that provides further information about the contentand/or resources available from the network address or a comment or notethat explains why the user of client A 102 found the content and/orresources available from the shared network address to be interesting,useful, and/or valuable. Additionally or alternatively, the user ofclient A 102 may attach a representative image (e.g., a thumbnail image)of the network address to the network address. Furthermore, the user ofclient A 102 may add an indication of source or other identifieridentifying the user of client A 102 as the sharer (e.g., publisher) ofthe network address to the network address. Alternatively, client A 102may attach an indication of source identifying the user of client A 102as the sharer of the shared network address to the shared networkaddress automatically. The user of client A 102 also may add a timestampto the shared network address indicating the date and/or time at whichthe user of client A 102 designated the network address as a networkaddress to be shared. Additionally or alternatively, client A may assigna timestamp to the network address automatically in response to the userof client A 102 designating the network address as a network address tobe shared.

In response to the user of client A 102 adding the network address andassociated content, if any, to the local shared favorites directoryresident on client A 102, client A 102 automatically sends the networkaddress and associated content, if any, to host 108 (316-C1).

Host 108 receives the network address (316-H) and adds the networkaddress and associated content, if any, to a hosted shared favoritesdirectory (318-H). The hosted shared favorites directory may be a table,such as, for example, table 238 of FIG. 2 b, or other data structure formaintaining shared network addresses and associated content. Inaddition, host 108 updates the shared favorites syndication feed so thatthe shared favorites syndication feed includes the network address andassociated content, if any, as a new item in the shared favoritessyndication feed (320-H). In order to publish the network address andassociated content, if any, as an item in the shared favoritessyndication feed, host 108 may convert the network address andassociated content, if any, into the proper format for complying withthe appropriate syndication feed specification.

In the implementation illustrated in FIG. 3 b, after subscribing to theshared favorites syndication feed, client B 104 intermittently orperiodically requests updates to the shared favorites syndication feed(322-C2). For example, a news reader or aggregator resident on client B104 may intermittently or periodically poll the shared favoritessyndication feed for updates. Host 108 receives the request for anupdate to the shared favorites syndication feed (322-H) and sends thenetwork address and associated content, if any, to client B (324-H).Client B 104 receives the network address and associated content, ifany, as a new item in the syndication feed (324-C2).

After receiving the network address and associated content, if any, theuser of client B 104 may be given the opportunity to add commentsassociated with the shared network address to the shared favoritessyndication feed. In this manner, the users of clients A 102 and B 104may initiate a dialogue regarding shared network addresses in additionto sharing network addresses.

In addition, after receiving the network address, client B 104 mayimport the network address from the shared favorites syndication feed toa local favorites directory resident on client B 104 automatically.Alternatively, client B 104 may enable the user of client B 104 manuallyto instruct client B 104 to import the network address from the sharedfavorites syndication feed into the local favorites directory.

In some implementations, before importing the network address from theshared favorites syndication feed to the local shared favoritesdirectory, client B 104 may automatically assign one or more categorydesignations to the imported network address based on one or morecategory designations associated with the network address in the sharedfavorites syndication feed. Assigning one or more category designationsto the imported network address may include storing the imported networkaddress in one or more sub-directories (e.g., folders) corresponding tothe one or more category designations assigned to the imported networkaddress. For example, the network address www.espn.com may be associatedwith both a sports category designation and a news category designationin the shared favorites syndication feed. Therefore, when client B 104imports the network address www.espn.com into the local shared favoritesdirectory, client B 104 may store the network address in a “Sports”folder, a “News” folder, or both.

Alternatively, before importing the shared network address from theshared favorites syndication feed, client B 104 may prompt the user ofclient B 104 to assign a category designation to the network address. Insome implementations, client B 104 may provide category recommendationsto the user of client B 104 based on one or more category designationsassociated with the shared network address in the shared favoritessyndication feed.

In some scenarios, the network address to be imported from the sharedfavorites syndication feed to the local favorites directory already maybe stored in the local favorites directory. Therefore, client B 104 maymake a determination as to whether the network address already exists inthe local favorites directory before importing the network address tothe local favorites directory. In some implementations, if client B 104determines that the network address already exists in the local sharedfavorites directory, client B 104 may not import the shared networkaddress 104 to the local shared favorites directory.

In other implementations, if client B 104 determines that the networkaddress already exists in the local shared favorites directory, client B104 may compare the category designation associated with the networkaddress in the local shared favorites directory with one or morecategory designations associated with the network address in the sharedfavorites syndication feed. In the event that the category designationassociated with the network address in the local shared favoritesdirectory is different than one or more of the category designationsassociated with the network address in the shared favorites syndicationfeed, client B 104 may include one or more mechanisms for alerting auser of client B 104 of the discrepancy and allowing the user to specifyan appropriate category designation for the network address.Alternatively, client B 104 may include one or more mechanisms forresolving the discrepancy automatically. For example, if the user ofclient B 104 manually added the network address and associated categorydesignation to the local shared favorites directory or if the user ofclient B manually assigned the category designation associated with thenetwork address in the local shared favorites directory, client B 104may retain the category designation associated with the network addressin the local shared favorites directory. However, if the network addressin the local shared favorites directory was imported to the local sharedfavorites directory from the shared favorites syndication feed and thecategory designation associated with the network address was notassigned to the network address by the user, client B 104 may reassignthe category designation associated with the network address in thelocal shared favorites directory based on one or more categorydesignations associated with the network address in the shared favoritessyndication feed or client B 104 may import one or more additionalcopies of the network address to the local shared favorites directoryand assign the one or more additional copies of the network addressescategory designations based on one or more category designationsassociated with the network address in the shared favorites syndicationfeed.

In some implementations, host 108 may be configured to be able to pushupdates to the shared favorites syndication feed from host 108 to clientB 104 rather than, or in addition to, updates to the shared favoritessyndication feed being pulled from host 108 by client B 104. Forexample, host 108 may receive a subscription request from client B 104and thereafter push updates to the shared favorites syndication feed toclient B 104 periodically. Additionally or alternatively, host 108 maypush updates to the shared favorites syndication feed to client B 104 inresponse to a triggering event, such as, for example, receiving one ormore new shared network addresses from client A 102. In implementationswhere host 108 is configured to be able to push updates to the sharedfavorites syndication feed to client B 104, the user of client B 104 maybe alerted of the ability of host 108 to push updates to the sharedfavorites syndication feed to client B 104, and given the opportunity toopt out of receiving pushed updates to the shared favorites syndicationfeed. If the user of client B 104 decides against receiving pushedupdates to the shared favorites syndication feed, updates to the sharedfavorites syndication feed still may be received by client B 104 bypulling updates from host 108.

Referring to FIG. 3 c, the user of client B 104 adds a new networkaddress to a local shared favorites directory resident on client B 104(326-C2). In addition, the user of client B 104 also may attachadditional content and/or data to, or otherwise associate additionalcontent and/or data with, the network address. In response to the userof client B 104 adding the new network address to the local sharedfavorites directory resident on client B 104, client B 104 automaticallysends the new network address to host 108 (628-C2). Host 108 receivesthe new network address (328-H) and adds the new network address to thehosted shared favorites directory (330-H). In addition, host 108 updatesthe shared favorites syndication feed so that the shared favoritessyndication feed includes the new network address as a new item in thefeed (332-H).

After subscribing to the shared favorites syndication feed, client A 102intermittently or periodically requests updates to the shared favoritessyndication feed (334-C1). For example, a news reader or aggregatorresident on client A 102 may intermittently or periodically poll theshared favorites syndication feed for updates. Host 108 receives therequest for an update to the shared favorites syndication feed (334-H)and sends the new network address to client A 102 (336-H). In someimplementations, host 108 may send the network address originally sharedby client A 102 at 316-C1 to client A 102 as part of the update to theshared favorites syndication feed. In this manner, client A 102 may haveaccess to all of the shared network addresses in the shared favoritessyndication feed, not just the network address shared by otherusers/communications devices. In other implementations, host 108 may notsend the network address originally shared by client A 102 at 316-C1 toclient A 102 as part of the update to the shared favorites syndicationfeed. In such implementations, host 108 may retain an indicationassociated with the shared network address that identifies client A 102as the source of the shared network address and filter the sharednetwork address from the update to the shared favorites syndication feedsent to client A 102 based on the indication that client A 102 was thesource of the shared network address.

Client A 102 receives the new network address as a new item in thesyndication feed (336-C1). In some implementations, client A 102 mayimport the new network address from the shared favorites syndicationfeed to a local favorites directory resident on client A 102automatically. Alternatively, in other implementations, client A 102 mayenable the user of client A 102 manually to instruct client A 102 toimport the new network address from the shared favorites syndicationfeed into the local favorites directory.

FIGS. 3 a-3 c illustrate a process by which client A 102 and client B104 subscribe to and contribute to a shared favorites syndication feedinitiated by client A 102. Of course, one or more of client A 102 andclient B 104 may subscribe to and/or contribute to one or moreadditional shared favorites syndication feeds in addition to, or as analternative to, the shared favorites syndication feed initiated byclient A 102. In such a scenario, users of client A 102 and/or client B104 may be made aware of the existence of and their ability to subscribeto additional shared favorites syndication feeds through invitations tosubscribe to one or more additional shared favorites syndication feeds.Additionally or alternatively, host 108 may maintain one or more webpages listing one or more shared favorites syndication feeds to whichusers of client A 102 and/or client B 104 may subscribe. In someimplementations, such web pages may include selectable icons and/orlinks that enable users of client A 102 and/or client B 104 to subscribeto the one or more shared favorites syndication feeds.

Referring to FIG. 4, a process 400 for sharing network addressesincludes receiving network addresses, automatically categorizingreceived network addresses, storing categorized network addresses in ahosted shared favorites directory, and publishing the contents of theshared favorites directory.

More particularly, host 108 intermittently receives network addressesfrom communications devices connected to network 110 (402). Networkaddresses received by host 108 are sent by communications devicesconnected to network 110 automatically in response to being assignedshared designations. Upon receipt of a network address, host 108automatically categorizes the received network addresses (404). Forexample, host 108 may assign a received shared network address the samecategorization that the ODP has assigned the received network address.The categorized network addresses are stored in a hosted shared networkaddress directory (406) and the hosted shared network address directoryis published (408). In some implementations, before storing and/orpublishing a received network address, host 108 may verify that thenetwork address has not been stored and/or published previously or thatthe network address has not been stored and/or published within apredefined period of time. For example, the shared network addressesstored in the hosted shared network address directory may be publishedas items in one or more syndication feeds. Additionally oralternatively, the shared network addresses stored in the hosted sharednetwork address directory may be published to one or more web pages.Furthermore, the published shared network addresses may be published soas to identify the categories automatically assigned to the sharednetwork addresses by host 108.

Host 108 continues to receive network addresses from communicationsdevices connected to network 110 intermittently (402). When new networkaddresses are received, they are automatically categorized (404), andstored in the hosted shared network address directory (406). Inaddition, the published version of the shared network addresses isupdated (408) to reflect the newly shared network addresses. Forexample, a newly shared network address may be published as a new itemin a syndication feed or as a new hyperlink on a web page.

The described systems, methods, and techniques are not limited to anyparticular hardware or software configuration. Rather, they may beimplemented in digital electronic circuitry, computer hardware,firmware, software, or in combinations thereof.

Apparatuses embodying these techniques may include appropriate input andoutput devices, a computer processor, and a computer program producttangibly embodied in a machine-readable storage device for execution bya programmable processor.

A process embodying these techniques may be performed by a programmableprocessor executing a program of instructions to perform desiredfunctions by operating on input data and generating appropriate output.The techniques may be implemented in one or more computer programs thatare executable on a programmable system including at least oneprogrammable processor coupled to receive data and instructions from,and to transmit data and instructions to, a data storage system, atleast one input device, and at least one output device. Each computerprogram may be implemented in a high-level procedural or object-orientedprogramming language, or in assembly or machine language if desired; andin any case, the language may be a compiled or interpreted language.

Suitable processors include, by way of example, both general and specialpurpose microprocessors. Generally, a processor will receiveinstructions and data from a read-only memory and/or a random accessmemory. Storage devices suitable for tangibly embodying computer programinstructions and data include all forms of non-volatile memory,including, for example semiconductor memory devices, such as ErasableProgrammable Read-Only Memory (EPROM), Electrically ErasableProgrammable Read-Only Memory (EEPROM), and flash memory devices;magnetic disks, such as internal hard disks and removable disks;magneto-optical disks; and Compact Disc Read-Only Memory (CD-ROM). Anyof the foregoing may be supplemented by, or incorporated in,specially-designed ASICs (application-specific integrated circuits).

A number of implementations have been described. Nevertheless, it willbe understood that various modifications may be made. For example,advantageous results may be achieved if the disclosed techniques areperformed in a different order and/or if components in the disclosedsystems are combined in a different manner and/or replaced orsupplemented by other components.

In addition, it will be understood that the terms network address,favorite, and bookmark as used above may be used interchangeably andthat the terms network address, favorite, and bookmark may be used torefer specifically to a network address or a pointer to a networkaddress as well as any data associated with the network address orpointer to a network address such as, for example, comment data,category data, representative image data, source data, date data, and/ortime data.

Accordingly, other implementations are within the scope of the followingclaims.

What is claimed is:
 1. A method of sharing web pages with users of acomputer service, the method comprising: maintaining, with a web browserat a client computer, a favorite web page collection for storing networkaddresses of web pages that have been selected as favorite web pages bya user of the web browser at the client computer, the favorite web pagecollection including an aggregation of both network addresses of webpages that have not been shared with other users of the computer serviceand network addresses of web pages that have been shared with otherusers of the computer service; receiving, with the web browser at theclient computer, an indication that a user of the web browser at theclient computer has selected a new web page for inclusion in thefavorite web page collection maintained by the web browser at the clientcomputer; and in response to receiving the indication that the user hasselected the new web page for inclusion in the favorite web pagecollection maintained by the web browser at the client computer: addinga network address of the new web page to the favorite web pagecollection maintained by the web browser at the client computer,determining, based on input by the user that is specific to theparticular new web page being added to the favorite web page collection,whether or not to share, with other users of the computer service, anindication that the new web page is included in the favorite web pagecollection maintained by the web browser at the client computer, anddepending on conclusions drawn regarding whether or not to share anindication that the new web page is included in the favorite web pagecollection maintained by the web browser at the client computer,accessing the network address of the new web page and transmitting theaccessed network address of the new web page to a remote host computerassociated with the computer service to share the accessed networkaddress with other users of the computer service.
 2. The method of claim1 wherein determining whether or not to share, with other users of thecomputer service, an indication that the new web page is included in thefavorite web page collection maintained by the web browser at the clientcomputer includes: querying the user that selected the new web page forinclusion in the favorite web page collection to determine whether anindication that the new web page is included in the favorite web pagecollection is to be shared with other users of the computer service;receiving an affirmative response from the user indicating that anindication that the new web page is included in the favorite web pagecollection is to be shared with other users of the computer service; andbased on receiving the affirmative response from the user, determiningthat an indication that the new web page is included in the favorite webpage collection is to be shared with other users of the computerservice.
 3. The method of claim 1 wherein: maintaining the favorite webpage collection includes maintaining a shared favorite web pagesub-collection that includes the network addresses for the web pagesthat have been shared with other users of the computer service;receiving the indication that the user of the web browser at the clientcomputer has selected the new web page for inclusion in the favorite webpage collection includes receiving an indication that the user of theweb browser at the client computer has selected the new web page forinclusion in the shared favorite web page sub-collection; adding thenetwork address of the new web page to the favorite web page collectionincludes adding the network address of the new web page to the sharedfavorite web page sub-collection; and determining if an indication thatthe new web page is included in the favorite web page collectionmaintained by the web browser at the client computer includesdetermining that the new web page is to be shared with other users ofthe computer service based, at least in part, on receiving theindication that the user selected the new web page for inclusion in theshared favorite web page sub-collection.
 4. The method of claim 1further comprising: maintaining, at the remote host computer, acommunity favorite web page collection that includes one or more networkaddresses of one or more web pages that have been selected for inclusionin the community favorite web page collection by one or more users ofthe computer service; receiving, at the remote host computer, thenetwork address of the new web page; and in response to receiving, atthe remote host computer, the network address of the new web page:adding the network address of the new web page to the community favoriteweb page collection, and sharing the network address of the new web pagewith other users of the computer service.
 5. The method of claim 4further comprising publishing the one or more network addresses includedin the community favorite web page collection as items in a syndicationfeed, wherein sharing the network address of the new web page includespublishing the network address of the new web page as an item in thesyndication feed.
 6. The method of claim 5 wherein: publishing the oneor more network addresses included in the community favorite web pagecollection as items in a syndication feed includes publishing the one ormore network addresses included in the community favorite web pagecollection as items in an RSS feed, and publishing the network addressof the new web page as an item in the syndication feed includespublishing the network address of the new web page as an item in the RSSfeed.
 7. The method of claim 5 wherein: publishing the one or morenetwork addresses included in the community favorite web page collectionas items in a syndication feed includes publishing the one or morenetwork addresses included in the community favorite web page collectionas items in an ATOM feed, and publishing the network address of the newweb page as an item in the syndication feed includes publishing thenetwork address for the new web page as an item in the ATOM feed.
 8. Themethod of claim 4 further comprising publishing the one or more networkaddresses included in the community favorite web page collection on acommunity favorite web page that is accessible to the one or more usersof the computer service, wherein sharing the network address of the newweb page includes publishing the network address of the new web page onthe community favorite web page.
 9. The method of claim 4 whereinsharing the network address of the new web page includes sending thenetwork address of the new web page to client computers associated withthe other users of the computer service for inclusion in local communityfavorite web page collections maintained at the client computersassociated with the other users of the computer service.
 10. The methodof claim 4 wherein sharing the network address of the new web pageincludes sending an e-mail to the other users of the computer servicethat includes the network address of the new web page.
 11. The method ofclaim 4 further comprising receiving, at the remote host computer fromone or more other users of the computer service, one or more communityfavorite web page collection subscription requests, wherein sharing thenetwork address of the new web page with other users of the computerservice includes sharing the network address of the new web page onlywith the one or more users from which the subscription requests werereceived.
 12. The method of claim 1 further comprising receiving, fromthe user of the web browser at the client computer, supplementalinformation associated with the new web page, wherein transmitting theaccessed network address of the new web page to a remote host computerassociated with the computer service for sharing with other users of thecomputer service includes transmitting the received supplementalinformation associated with the new web page to the remote hostcomputer.
 13. The method of claim 12 wherein: receiving, from the userof the web browser at the client computer, supplemental informationassociated with the new web page includes receiving a user-suppliedcategory for the new web page; and transmitting the receivedsupplemental information associated with the new web page to the remotehost computer includes transmitting the user-supplied category for thenew web page to the remote host computer.
 14. The method of claim 12wherein: receiving, from the user of the web browser at the clientcomputer, supplemental information associated with the new web pageincludes receiving a user-supplied comment regarding the new web page;and transmitting the received supplemental information associated withthe new web page to the remote host computer includes transmitting theuser-supplied comment regarding the new web page to the remote hostcomputer.
 15. The method of claim 1 further comprising determining anidentity of the user of the web browser at the client computer, whereintransmitting the accessed network address of the new web page to aremote host computer associated with the computer service for sharingwith other users of the computer service includes transmitting anindication of the determined identity of the user of the web browser atthe client computer to the remote host computer.
 16. The method of claim1 further comprising determining a time at which the user of the webbrowser at the client computer selected the new web page for inclusionin the favorite web page collection, wherein transmitting the accessednetwork address of the new web page to a remote host computer associatedwith the computer service for sharing with other users of the computerservice includes transmitting, to the remote host computer, anindication of the determined time at which the user of the web browserat the client computer selected the new web page for inclusion in thefavorite web page collection.
 17. The method of claim 1 wherein theinput by the user that is specific to the particular new web page beingadded to the favorite web page collection includes an instruction to addonly the new web page to the favorite web page collection.
 18. A methodof sharing web pages with users of a computer service, the methodcomprising: maintaining, at a host computer, a community favorite webpage collection that includes one or more network addresses for one ormore web pages received from web browsers at client computers of usersof the computer service, the one or more network addresses having beensent to the host computer by the web browsers at the client computersautomatically in response to the users both selecting the web pages tobe included in at least one favorite web page collection maintainedlocally by the web browsers at the client computers and identifying theselected web pages as web pages to be shared; receiving, at the hostcomputer from a particular client computer, a network address for a newweb page, the network address for the new web page having been sent tothe host computer by the particular client computer as a result of: auser of the particular client computer selecting the new web page forinclusion in the favorite web page collection maintained by the webbrowser at the client computer: adding, at the particular clientcomputer, the network address of the new web page to a favorite web pagecollection maintained by the web browser at the particular clientcomputer, determining, at the particular client computer, based on inputby the user that is specific to the particular new web page being addedto the favorite web page collection, whether or not to share, with otherusers of the computer service, an indication that the new web page isincluded in the favorite web page collection maintained by the webbrowser at the client computer, and based on a conclusion drawn to sharean indication that the new web page is included in the favorite web pagecollection maintained by the web browser at the client computer,accessing the network address of the new web page and transmitting theaccessed network address of the new web page to the host computer; andin response to receiving the network address for the new web page:adding the network address for the new web page to the communityfavorite web page collection maintained at the host computer, andsharing the network address for the new web page with one or more otherusers of the computer service.
 19. The method of claim 18 furthercomprising sharing the one or more network addresses for the one or moreweb pages included in the community web page collection with one or moreother users of the computer service.
 20. The method of claim 19 wherein:sharing the one or more network addresses for the one or more web pagesincluded in the community web page collection with one or more otherusers of the computer service includes publishing the one or morenetwork addresses for the one or more web pages included in thecommunity web page collection as items in a syndication feed; andsharing the network address for the new web page with one or more otherusers of the computer service includes publishing the network addressfor the new web page as an item in the syndication feed.
 21. The methodof claim 20 wherein: publishing the one or more network addresses forthe one or more web pages included in the community web page collectionas items in a syndication feed includes publishing the one or morenetwork addresses for the one or more web pages included in thecommunity web page collection as items in an RSS feed; and publishingthe network address for the new web page as an item in the syndicationfeed includes publishing the network address for the new web page as anitem in the RSS feed.
 22. The method of claim 20 wherein: publishing theone or more network addresses for the one or more web pages included inthe community web page collection as items in a syndication feedincludes publishing the one or more network addresses for the one ormore web pages included in the community web page collection as items inan ATOM feed; and publishing the network address for the new web page asan item in the syndication feed includes publishing the network addressfor the new web page as an item in the ATOM feed.
 23. The method ofclaim 19 wherein: sharing the one or more network addresses for the oneor more web pages included in the community web page collection with oneor more other users of the computer service includes publishing the oneor more network addresses for the one or more web pages included in thecommunity web page collection on a community favorite web page; andsharing the network address for the new web page with other users of thecomputer service includes publishing the network address for the new webpage on the community favorite web page.
 24. The method of claim 19wherein: sharing the one or more network addresses for the one or moreweb pages included in the community web page collection with one or moreother users of the computer service includes sending the networkaddresses for the one or more web pages included in the community webpage collection to client computers of the other users of the computerservice for inclusion in local community favorite web page collectionsmaintained by web browsers at the client computers of the other users ofthe computer service; and sharing the network address for the new webpage with one or more other users of the computer service includessending the network address for the new web page to the client computersof the other users of the computer service for inclusion in the localcommunity favorite web page collections maintained by the web browsersat the client computers of the other users of the computer service. 25.The method of claim 18 wherein sharing the network address for the newweb page with one or more other users of the computer service includessending an e-mail to the other users of the computer service thatincludes the network address for the new web page.
 26. The method ofclaim 18 further comprising: receiving, at the host computer fromanother client computer, another network address for another web page,the network address for the other web page having been sent to the hostcomputer by the other client computer in response to a user of a webbrowser at the other client computer both selecting the other web pagefor inclusion in a favorite web page collection maintained locally bythe web browser at the other client computer and identifying the otherweb page as a web page to be shared; in response to receiving thenetwork address for the other web page: adding the network address forthe other web page to the community favorite web page collectionmaintained at the host computer, and sharing the network address for theother web page with the user and the other users of the computerservice.
 27. The method of claim 18 wherein: receiving, at the hostcomputer from the particular client computer, the network address forthe new web page includes receiving an indication of the identity of theuser that both selected the new web page for inclusion in the favoriteweb page collection maintained locally by the web browser at theparticular client computer and that identified the new web page as a webpage to be shared; and sharing the network address for the new web pagewith one or more other users of the computer service includes sharingthe indication of the identity of the user that both selected the newweb page for inclusion in the favorite web page collection maintainedlocally by the web browser at the particular client computer and thatidentified the new web page as a web page to be shared.
 28. The methodof claim 27 further comprising: maintaining an instant messagingparticipant list for an individual user of the computer service, theinstant messaging participant list including a screen name associatedwith the user that both selected the new web page for inclusion in thefavorite web page collection maintained locally by the web browser atthe particular client computer and that identified the new web page as aweb page to be shared; and in response to sharing the network addressfor the new web page with the one or more other users of the computerservice, enabling display of an alert indicator in association with thescreen name in the instant messaging participant list, the alertindicator indicating that a new web page has been shared with the otherusers of the computer service by the user associated with the screenname.
 29. The method of claim 18 wherein: receiving, at the hostcomputer from the particular client computer, the network address forthe new web page includes receiving an indication of a category for thenew web page, the category for the new web page having been provided bythe user that both selected the new web page for inclusion in thefavorite web page collection maintained locally by the web browser atthe particular client computer and that identified the new web page as aweb page to be shared; and sharing the network address for the new webpage with other users of the computer service includes sharing, withother users of the computer service, the indication of the category forthe new web page provided by the user that both selected the new webpage for inclusion in the favorite web page collection maintainedlocally by the web browser at the particular client computer and thatidentified the new web page as a web page to be shared.
 30. The methodof claim 18 wherein: receiving, at the host computer from the particularclient computer, the network address for the new web page includesreceiving a comment regarding the new web page, the comment regardingthe new web page having been provided by the user that both selected thenew web page for inclusion in the favorite web page collectionmaintained locally by the web browser at the particular client computerand that identified the new web page as a web page to be shared; andsharing the network address for the new web page with other users of thecomputer service includes sharing, with other users of the computerservice, the comment regarding the new web page provided by the userthat both selected the new web page for inclusion in the favorite webpage collection maintained locally by the web browser at the particularclient computer and that identified the new web page as a web page to beshared.
 31. The method of claim 18 further comprising receiving, at thehost computer from one or more users of the computer service, one ormore community favorite web page collection subscription requests,wherein sharing the network address for the new web page with one ormore other users of the computer service includes sharing the networkaddress for the new web page only with the one or more users from whichthe subscription requests were received.
 32. The method of claim 18further comprising receiving an indication of one or more users that areallowed to access the community favorite web page collection, whereinsharing the network address for the new web page with one or more otherusers of the computer service includes sharing the network address forthe new web page only with the one or more users that are allowed toaccess the community favorite web page collection.
 33. The method ofclaim 18 further comprising: in response to receiving, at the hostcomputer from the particular client computer, the network address forthe new web page, determining, at the host computer, a category for thenew web page; and associating the category determined for the new webpage with the received network address for the new web page.
 34. Themethod of claim 33 wherein sharing the network address for the new webpage with one or more other users of the computer service includessharing the category associated with the network address for the new webpage with the one or more other users of the computer service.
 35. Themethod of claim 33 wherein automatically determining a category for thenew web page includes: accessing an Open Directory Project categoryindication for the new web page; and assigning the new web page theaccessed Open Directory Project category for the new web page.
 36. Themethod of claim 33 wherein automatically determining a category for thenew web page includes: accessing content made available at the new webpage; and determining a category for the new web page based on theaccessed content.
 37. The method of claim 32 further comprising:receiving, at the host computer from an individual user of the computerservice, an indication of one or more categories of web pages to beshared with the individual user; and determining if the categoryassociated with the new web page corresponds to one of the categories ofweb pages to be shared with the individual user, wherein sharing thenetwork address for the new web page with one or more other users of thecomputer service includes sharing the network address for the new webpage with the individual user only if the category associated with thenew web page corresponds to one of the categories of web pages to beshared with the individual user.
 38. A non-transitory computer readablemedium embodying a computer program for sharing web pages with users ofa computer service, including instructions that, when executed, cause acomputer to: maintain, with a web browser, a favorite web pagecollection for storing network addresses of web pages that have beenselected as favorite web pages by a user of the web browser, thefavorite web page collection including an aggregation of both networkaddresses of web pages that have not been shared with other users of thecomputer service and network addresses of web pages that have beenshared with other users of the computer service; receive, with the webbrowser, an indication that a user of the web browser has selected a newweb page for inclusion in the favorite web page collection maintained bythe web browser; and in response to receiving the indication that theuser has selected the new web page for inclusion in the favorite webpage collection maintained by the web browser: add a network address ofthe new web page to the favorite web page collection maintained by theweb browser, determine, based on input by the user that is specific tothe particular new web page being added to the favorite web pagecollection, whether or not to share, with other users of the computerservice, an indication that the new web page is included in the favoriteweb page collection maintained by the web browser, and depending onconclusions drawn regarding whether or not to share an indication thatthe new web page is included in the favorite web page collectionmaintained by the web browser, access the network address of the new webpage and transmit the accessed network address of the new web page to aremote host computer associated with the computer service to share theaccessed network address with other users of the computer service. 39.The non-transitory computer readable medium of claim 38 wherein theinstructions that, when executed, cause a computer to determine whetheror not to share, with other users of the computer service, an indicationthat the new web page is included in the favorite web page collectionmaintained by the web browser include instructions that, when executed,cause a computer to: query the user that selected the new web page forinclusion in the favorite web page collection to determine whether anindication that the new web page is included in the favorite web pagecollection is to be shared with other users of the computer service;receive an affirmative response from the user indicating that anindication that the new web page is included in the favorite web pagecollection is to be shared with other users of the computer service; andbased on receiving the affirmative response from the user, determinethat an indication that the new web page is included in the favorite webpage collection is to be shared with other users of the computerservice.
 40. The non-transitory computer readable medium of claim 38wherein: the instructions that, when executed, cause a computer tomaintain, with the web browser, the favorite web page collection includeinstructions that, when executed, cause a computer to maintain, with theweb browser, a shared favorite web page sub-collection that includes thenetwork addresses for the web pages that have been shared with otherusers of the computer service; the instructions that, when executed,cause a computer to receive, with the web browser, the indication thatthe user of the web browser has selected the new web page for inclusionin the favorite web page collection include instructions that, whenexecuted, cause a computer to receive, with the web browser, anindication that the user of the web browser has selected the new webpage for inclusion in the shared favorite web page sub-collection; theinstructions that, when executed, cause a computer to add the networkaddress of the new web page to the favorite web page collection includeinstructions that, when executed, cause a computer to add the networkaddress of the new web page to the shared favorite web pagesub-collection; and the instructions that, when executed, cause acomputer to determine if an indication that the new web page is includedin the favorite web page collection maintained by the web browser at theclient computer include instructions that, when executed, cause acomputer to determine that the new web page is to be shared with otherusers of the computer service based, at least in part, on receiving theindication that the user selected the new web page for inclusion in theshared favorite web page sub-collection.
 41. The non-transitory computerreadable medium of claim 38 further comprising instructions that, whenexecuted, cause a computer to receive, from the user of the web browser,supplemental information associated with the new web page, wherein theinstructions that, when executed, cause a computer to transmit theaccessed network address of the new web page to a remote host computerassociated with the computer service for sharing with other users of thecomputer service include instructions that, when executed, cause acomputer to transmit the received supplemental information associatedwith the new web page to the remote host computer.
 42. Thenon-transitory computer readable medium of claim 41 wherein: theinstructions that, when executed, cause a computer to receive, from theuser of the web browser, supplemental information associated with thenew web page include instructions that, when executed, cause a computerto receive a user-supplied category for the new web page; and theinstructions that, when executed, cause a computer to transmit thereceived supplemental information associated with the new web page tothe remote host computer include instructions that, when executed, causea computer to transmit the user-supplied category for the new web pageto the remote host computer.
 43. The non-transitory computer readablemedium of claim 41 wherein: the instructions that, when executed, causea computer to receive, from the user of the web browser, supplementalinformation associated with the new web page include instructions that,when executed, cause a computer to receive a user-supplied commentregarding the new web page; and the instructions that, when executed,cause a computer to transmit the received supplemental informationassociated with the new web page to the remote host computer includeinstructions that, when executed, cause a computer to transmit theuser-supplied comment regarding the new web page to the remote hostcomputer.
 44. The non-transitory computer readable medium of claim 38further comprising instructions that, when executed, cause a computer todetermine an identity of the user of the web browser, wherein theinstructions that, when executed, cause a computer to transmit theaccessed network address of the new web page to a remote host computerassociated with the computer service for sharing with other users of thecomputer service include instructions that, when executed, cause acomputer to transmit an indication of the determined identity of theuser of the web browser to the remote host computer.
 45. Thenon-transitory computer readable medium of claim 38 further comprisinginstructions that, when executed, cause a computer to determine a timeat which the user of the web browser selected the new web page forinclusion in the favorite web page collection, wherein the instructionsthat, when executed, cause a computer to transmit the accessed networkaddress of the new web page to a remote host computer associated withthe computer service for sharing with other users of the computerservice include instructions that, when executed, cause a computer totransmit, to the remote host computer, an indication of the determinedtime at which the user of the web browser selected the new web page forinclusion in the favorite web page collection.
 46. The non-transitorycomputer readable medium of claim 38 wherein the input by the user thatis specific to the particular new web page being added to the favoriteweb page collection includes an instruction to add only the new web pageto the favorite web page collection.
 47. A system for sharing web pageswith users of a computer service, the system comprising: a clientcomputer having a web browser configured to: maintain a favorite webpage collection for storing network addresses of web pages that havebeen selected as favorite web pages by a user of the web browser at theclient computer, the favorite web page collection including anaggregation of both network addresses of web pages that have not beenshared with other users of the computer service and network addresses ofweb pages that have been shared with other users of the computerservice; receive an indication that a user of the web browser at theclient computer has selected a new web page for inclusion in thefavorite web page collection maintained by the web browser at the clientcomputer; and in response to receiving the indication that the user hasselected the new web page for inclusion in the favorite web pagecollection maintained by the web browser at the client computer: add anetwork address of the new web page to the favorite web page collectionmaintained by the web browser at the client computer, determine, basedon input by the user that is specific to the particular new web pagebeing added to the favorite web page collection, whether or not toshare, with other users of the computer service, an indication that thenew web page is included in the favorite web page collection maintainedby the web browser at the client computer, and depending on conclusionsdrawn regarding whether or not to share an indication that the new webpage is included in the favorite web page collection maintained by theweb browser at the client computer, access the network address of thenew web page and transmit the accessed network address of the new webpage to a remote host computer associated with the computer service toshare the accessed network address with other users of the computerservice.
 48. The system of claim 47 wherein the web browser isconfigured to determine whether or not to share, with other users of thecomputer service, an indication that the new web page is included in thefavorite web page collection maintained by the web browser at the clientcomputer by: querying the user that selected the new web page forinclusion in the favorite web page collection to determine whether anindication that the new web page is included in the favorite web pagecollection is to be shared with other users of the computer service;receiving an affirmative response from the user indicating that anindication that the new web page is included in the favorite web pagecollection is to be shared with other users of the computer service; andbased on receiving the affirmative response from the user, determiningthat an indication that the new web page is included in the favorite webpage collection is to be shared with other users of the computerservice.
 49. The system of claim 47 wherein the web browser is furtherconfigured to: maintain a favorite web page collection that includes ashared favorite web page sub-collection that includes the networkaddresses for the web pages that have been shared with other users ofthe computer service; receive the indication that the user of the webbrowser at the client computer has selected the new web page forinclusion in the favorite web page collection by receiving an indicationthat the user of the web browser at the client computer has selected thenew web page for inclusion in the shared favorite web pagesub-collection; add the network address of the new web page to thefavorite web page collection by adding the network address of the newweb page to the shared favorite web page sub-collection; and determineif an indication that the new web page is included in the favorite webpage collection maintained by the web browser at the client computer bydetermining that the new web page is to be shared with other users ofthe computer service based, at least in part, on receiving theindication that the user selected the new web page for inclusion in theshared favorite web page sub-collection.
 50. The system of claim 47further comprising a remote host computer, the remote host computerbeing configured to: maintain a community favorite web page collectionthat includes one or more network addresses of one or more web pagesthat have been selected for inclusion in the community favorite web pagecollection by one or more users of the computer service; receive, at theremote host computer, the network address of the new web page; and inresponse to receiving the network address of the new web page: add thenetwork address of the new web page to the community favorite web pagecollection, and share the network address of the new web page with otherusers of the computer service.
 51. The system of claim 50 wherein theremote host computer is configured to share the network address of thenew web page by publishing the network address of the new web page as anitem in a syndication feed.
 52. The system of claim 47 wherein the webbrowser is further configured to: receive, from the user of the webbrowser at the client computer, supplemental information associated withthe new web page; and transmit the accessed network address of the newweb page to a remote host computer associated with the computer servicefor sharing with other users of the computer service by transmitting thereceived supplemental information associated with the new web page tothe remote host computer.
 53. The system of claim 47 wherein the webbrowser is further configured to: receive, from the user of the webbrowser at the client computer, a user-supplied category for the new webpage; and transmit the user-supplied category for the new web page tothe remote host computer.
 54. The system of claim 52 wherein the webbrowser is further configured to: receive, from the user of the webbrowser at the client computer, a user-supplied comment regarding thenew web page; and transmit the user-supplied comment regarding the newweb page to the remote host computer.
 55. The system of claim 47 whereinthe web browser is further configured to: determine an identity of theuser of the web browser at the client computer; and transmit anindication of the determined identity of the user of the web browser atthe client computer to the remote host computer.
 56. The system of claim47 wherein the web browser is further configured to: determine a time atwhich the user of the web browser at the client computer selected thenew web page for inclusion in the favorite web page collection; andtransmit, to the remote host computer, an indication of the determinedtime at which the user of the web browser at the client computerselected the new web page for inclusion in the favorite web pagecollection.
 57. The system of claim 47 wherein the input by the userthat is specific to the particular new web page being added to thefavorite web page collection includes an instruction to add only the newweb page to the favorite web page collection.